package com.example.ymm.modules1.entity.my.user;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.sql.Timestamp;

/**
 * 钉钉用户信息实体
 */

@Data
public class DbUser implements Serializable {

    @TableId
    private String userId;

    @Schema(name= "名称")
    private String userName;

    @Schema(name= "手机")
    private String phone;

    @Schema(name= "头像")
    private String avatar;

    @Schema(name= "状态,0正常,1冻结")
    private Integer state;

    @Schema(name= "积分总数")
    Integer integral;

    @TableField(exist = false)
    Integer integralAll;//累计积分

    @TableField(exist = false)
    Integer integralExpend;//消耗积分


    @TableField(exist = false)
    Integer integralRead;//读书积分

    @Schema(name= "是否删除：0->未删；1->已删")
    private Integer isDelete;

    private String associatedUnionid;

    String unionid;

    String levelName;//职级

    Integer isRead;//是否参与读书:0 否 1是

    Integer continuousNum;// 连续打卡天数

    @TableField(exist = false)
    Integer cardNums;//排行榜 打卡数

    @TableField(exist = false)
    Double readTimes;//读书时长 用于计算排行，一次补卡最多按3分钟算

    /**
    当月 满勤情况 0 未满勤 1 满勤 2全勤
     */
    @TableField(exist = false)
    Integer monthCardType;

    /**
     当年 满勤情况 0 未满勤 1 满勤 2全勤
     */
    @TableField(exist = false)
    Integer yearCardType;


    String remark;//备注

    String pwd;//后台登录密码

    Integer sort;
//    String clazzId;//班级id
//
    @TableField(exist = false)
    String clazzName;//班级名称

    @TableField(fill= FieldFill.INSERT)
    private Timestamp createTime;

    @TableField(fill=FieldFill.INSERT_UPDATE)
    private Timestamp updateTime;


}
